1. Field of the Invention
The present invention relates to dialog management for conversational speech systems, and more particularly to modeless operation of a conversational computer system with multiple applications.
2. Description of the Related Art
Conversational systems typically focus on the interaction with a single application at a time. A speaker for a conversational system is only permitted to interact with the active application. This type of interaction is generally referred to as a modal interaction or a modal system. That is, the user must specify which application he intends to use, and must finish working with that application before using another. This is disadvantageous in many situations where several applications may be needed or desired to be accessed simultaneously. Further, the conventional modal systems may result in loss of efficiency and time. In many instances, this leads to reduced profitability.
To illustrate a conventional modal system, a first task must be performed and closed prior to opening a second task and performing the second task. Conventional conversational modal systems are not capable of distinguishing tasks between applications. However, this is not how every day tasks are generally performed. In an office setting, for example, a worker might begin writing a letter, stop for a moment and place a telephone call, then finish the letter. The conventional modal systems do not provide this flexibility.
Therefore, a need exists for a system and method which includes a modeless conversational speech system which provides greater flexibility by controlling multiple applications concurrently. A further need exists for a system and method which employs information from applications and the user""s actions to predict which applications the user will need.
A method, which may be implemented by a program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for modeless operation of a multi-modal user interface through implementation of independent decision networks, includes presenting a command to a dialog manager and comparing the command to a table of decision networks to determine if a corresponding decision network entry exists. The dialog manager creates a new instance of a decision network when a corresponding decision network entry is found. The new instance of the decision network is traversed in an isolated thread of execution such that a plurality of decision networks of a same instance or different instances may be active simultaneously. The new instance of the decision network is executed responsive to the command.
In other methods, which may be implemented using the program storage device, the step of querying a user to provide input to resolve discrepancies in decision networks and input additional information may be included. The steps of requesting an instance of a decision network be created to provide a service, the requesting being initiated by another decision network, and/or requesting a plurality of instances of decision networks be created to provide a service, the requesting being initiated by the dialog manager may be included. The step of generating a record of activity by a decision network for the activity of that decision network may also be included. The command may be presented in a formal language such that a plurality of human utterances represent an action to be taken. The step of interfacing with at least one application to respond to the command may be included where the interfacing is initiated by at least one decision network.
A system for modeless operation of a multi-modal user interface, in accordance with the present invention, includes a user interface adapted for receiving commands and a dialog manager adapted to receive the commands from the user interface. A table of decision networks is stored in a memory. The table provides cross-references between commands and decision networks. A plurality of decision networks are responsive to the dialog manager. The dialog manager instantiates decision networks based on the table of decision networks to respond to the commands.
In alternate embodiments, the commands may include formal language commands or human utterances. The decision networks preferably include states and transitions between states. The states are capable of initiating actions. The dialog manager may be adapted to query and receive query responses pursuant to information needed by the decision networks. The plurality of decision networks may include an active state on an isolated thread of execution wherein any number of the decision networks are capable of simultaneously being in the active state.
These and other objects, features and advantages of the present invention will become apparent from the following detailed description of illustrative embodiments thereof, which is to be read in connection with the accompanying drawings.